Recovery of established emergency calls

ABSTRACT

A system, method and apparatus for re-establishing a messaging session received at a public safety answering point are described. A Session Initiation Protocol (SIP) messaging session establishment request is received at an emergency call answer node. The messaging session establishment request has an indication of a previously established emergency messaging session between an operator workstation and a sending device to re-establish. The emergency call answer node checks a recovery queue for a previously received call establishment request having a matching indication for the previously established messaging session to re-establish. The emergency call answer node bridges a session leg for the received call establishment request and, a session leg for the previously received call establishment request having the matching indication for the previously established messaging session to re-establish the messaging session when a match is found.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of U.S. patent applicationSer. No. 14/039,633 filed Sep. 27, 2013 the entirety of which is herebyincorporated by reference for all purposes.

TECHNICAL FIELD

The present disclosure relates to the management of emergency calls, andin particular to systems, apparatuses and methods for re-establishingcalls or messaging sessions at a Public-Safety Answering Points.

BACKGROUND

Emergency call services, such as 9-1-1 in North America, establish acall between a caller and an operator. The operator can direct theresponse to the emergency. For example, a caller may call to report acar accident and the operator can dispatch emergency vehicles.

When an established call is dropped, for example due to a failure of acomponent in the communication path, the operator may attempt tore-establish the call with the caller by calling back to the number.However, calling back can be problematic as it requires additional time,requires the caller to hang the existing call and/or requires the callerto answer the call as well as other potential problems.

It is desirable to be able to be able to re-establish emergency callsbetween a caller and an operator with no intervention by the caller.

BRIEF DESCRIPTION OF THE DRAWINGS

Further features and advantages of the present disclosure will becomeapparent from the following detailed description, taken in combinationwith the appended drawings, in which:

FIG. 1 depicts an environment in which the present call re-establishmentmay be used;

FIG. 2 depicts a call re-establishment system and process;

FIG. 3 depicts a further call re-establishment system and process;

FIG. 4 depicts a process flow for re-establishing emergency calls;

FIG. 5 depicts components of a call answer node capable ofre-establishing emergency calls;

FIG. 6 depicts a method of re-establishing an emergency call;

FIG. 7 depicts a further method of re-establishing an emergency call;and

FIG. 8 depicts a further method of re-establishing IM or SMS emergencycall.

DETAILED DESCRIPTION

In accordance with the present disclosure, there is provided a method ofre-establishing a messaging session received at a public safetyanswering point. The method comprising receiving a Session InitiationProtocol (SIP) messaging session establishment request at an emergencycall answer node, the messaging session establishment request having anindication of a previously established messaging session between anoperator workstation and a sending device to re-establish; checking arecovery queue at the emergency call answer node for a previouslyreceived messaging session establishment request having a matchingindication for the previously established messaging session tore-establish; and bridging at the emergency call answer node a messagingsession leg for the received messaging session establishment request anda messaging session leg for the previously received messaging sessionestablishment request having the matching indication for the previouslyestablished messaging session to re-establish when a match is found.

In accordance with the present disclosure, there is provided anapparatus for re-establishing a messaging session received at a publicsafety answering point. The apparatus comprising: a processor unit forexecuting instructions; and a memory for storing instructions, whichwhen executed by the processor unit configure the apparatus to: receivea Session Initiation Protocol (SIP) messaging session establishmentrequest having an indication of a previously established messagingsession between an operator workstation and a sending device tore-establish; search a recovery queue for a previously receivedmessaging session establishment request having a matching indication forthe previously established messaging session to re-establish; and bridgea messaging session leg for the received messaging session establishmentrequest and a messaging session leg for the previously receivedmessaging session establishment request having the matching indicationfor the previously established messaging session to re-establish when amatch is found.

In accordance with the present disclosure, there is provided a systemfor re-establishing a messaging session received at a public safetyanswering point. The public safety answering point comprising anemergency call answer node and a SIP proxy noted. The public safetyanswering point comprising: a processor unit for executing instructions;and a memory for storing instructions, which when executed by theprocessor unit configure the apparatus to: receive a Session InitiationProtocol (SIP) messaging session establishment request having anindication of a previously established messaging session between anoperator workstation and a sending device to re-establish; checking arecovery queue for a previously received messaging session establishmentrequest having a matching indication for the previously establishedmessaging session to re-establish; and bridge a messaging session legfor the received messaging session establishment request and a messagingsession leg for the previously received messaging session establishmentrequest having the matching indication for the previously establishedmessaging session to re-establish when a match is found. The SIP proxynode comprising: a processor unit for executing instructions; and amemory for storing instructions, which when executed by the processorunit configure the SIP proxy node to: receive an messaging sessioninitiation request; direct establishment of a messaging session leg forthe messaging session between an initial messaging session answer nodeand an emergency call operator workstation; direct establishment of amessaging session leg for the messaging session between the initialmessaging session answer node and an messaging session gateway; detect afailure of the initial messaging session answer node; and cause, withthe SIP proxy, transmittal of one of the SIP messaging sessionestablishment request or the previously received messaging sessionestablishment request.

In accordance with the present disclosure, there is provided anon-transitory computer readable memory containing instructions forexecution by a processor, the instructions for performing a method ofre-establishing a messaging session received at a public safetyanswering point. The method comprising receiving a Session InitiationProtocol (SIP) messaging session establishment request at an messagingsession answer node, the messaging session establishment request havingan indication of a previously established messaging session tore-establish; checking a recovery queue at the messaging session answernode for a previously received messaging session establishment requesthaving a matching indication for the previously established messagingsession to re-establish; and bridging at the messaging session answernode a messaging session leg for the received messaging sessionestablishment request and a messaging session leg for the previouslyreceived messaging session establishment request having the matchingindication for the previously established messaging session tore-establish when a match is found.

Emergency calls or messages are placed to a single number and routed toan appropriate answering point. The emergency number is generally commonto a large geographic area, for example, 9-1-1 in North America or 1-1-2in Europe. The emergency call infrastructure may be provided by variousinteracting systems. Modern emergency call answering centers, which maybe referred to as Public-Safety Answering Points (PSAPs), make use ofSession Initiation Protocol (SIP) functionality for managing emergencycalls or messaging sessions. Using SIP, emergency calls can beestablished as a number of connected call legs. For example, a call legmay be established between the calling device and an application serverof a PSAP. The application server may locate an available operator,establish another call leg from the application server to the operatorand then bridge the two call legs to establish the call between thecaller and emergency operator. The application server may provideadditional functionality, such as call transfer, call recording, etc.

When an application server at a PSAP fails, emergency calls that wereestablished through the application server will be disconnected. As willbe appreciated, it is desirable to be able to quickly re-establish thelost calls. The term ‘call’ may be used to also refer to a messagingsession. In re-establishing the calls it is desirable to have the samecaller re-connected with the same operator in order to avoid confusion,or wasted time having to explain an emergency situation to a newoperator. Further, it is desirable to re-establish lost calls withoutintervention by the user. As described further below, it is possible todetect a failure of an application server and re-establish call legs toa secondary or back-up server, which can then bridge call legs ofpreviously established calls in order to re-establish the previouscalls.

FIG. 1 depicts an environment in which the present call re-establishmentmay be used. The environment 100 includes a number of differenttechnologies for establishing a call. The technologies may include, forexample, cellular or mobile infrastructure 102, a Public-SwitchedTelephone Network (PSTN) infrastructure 104 and Voice over InternetProtocol (VoIP) infrastructure 106. One or more networks 108 allow acall from any of the infrastructures 102, 104, 106 to be routed to anemergency call gateway 110. The emergency call gateway can route thecall to an appropriate PSAP 112. The cellular/mobile network 102 canprovide voice data and messaging technologies by any wireless standardsupport voice, data and/or messaging services.

The network route a call to the emergency call gateway 110. Althoughonly a single emergency call gateway 110 is depicted, a plurality ofgateways may be provided. The additional gateways may serve differentgeographic areas and/or may provide backup functionality in case of afailure of the gateway 110. When a call is received at the gateway 110it can establish the call through the emergency call servers 114 of PSAP112. The emergency call servers 114 may comprise a call answering serveror server that receives the routed call and connects the call to anavailable emergency operator. The operators may be located in one ormore locations 118, 120. In order to provide redundancy in case ofequipment failure or malfunction, the PSAP 112 may include additionalredundant emergency call servers 116. The redundant emergency callservers 116 provide the same functionality as the emergency call servers114, however are intended to be used when the emergency call servers 114fail or experience an interruption. The redundant emergency call servers116 may be located in different physical locations to ensure that aphysical disruption that caused the emergency call servers 114 to fail,such as a local power failure or hardware failure, that would not alsocause the redundant servers 116 to fail.

When an emergency call servers 114 fails, due to a server or componentfailure, any established calls on the server will be dropped. Asdescribed further herein, the dropped calls can be re-established on theredundant back-up emergency call server 116 with no interaction from thecaller. The call can be re-established with the same operator and assuch the caller will not notice any impact from the failed call server,other than a possible period of silence as the call is re-established.

FIG. 2 depicts a call re-establishment system and process. As depicted,an emergency call can be placed from a phone 202. Although depicted as adesk phone, the call may be established from any number of callingdevices, including mobile device, cellular telephones, and VoIP useragents. The call is routed from the phone 202 to an emergencygateway/network element 204.

The system may comprise a number of emergency gateways as backups incase of a failure of an emergency gateway and/or to provide emergencyservice to a larger area. The emergency gateway establishes theemergency call with a call answer node/call control node A 208 though aproxy 206. The call answer node A 208 establishes the call with anoperator at one of a possible number of different operator locations210.

The emergency call or message that is received at the emergency gateway204 may be received over the PSTN network, a VoIP network or othercommunication networks. The emergency gateway 204 is capable ofestablishing a first call leg with the phone 202. The emergency gateway204 then attempts to establish the second leg of the emergency call withan appropriate operator. The emergency gateway 204 uses SIP/VoIPtechniques to establish the call legs to the operator. The emergencygateway passes a call initiation request to a SIP proxy 206, which inturn passes a call initiation request to the call answer node A 208. Thecall answer node A 208 can establish a call leg, through media exchangedfor example using Real-time Transport Protocol (RTP) or Message SessionRelay Protocol (MSRP) techniques, with the emergency gateway 204. Thecall answer node A 208 may also determine an operator workstation thatthe emergency call can be established with. Once an operator isdetermined and a call leg established between the call answer node A 208and the operator, the individual call legs can be bridged or otherwiseconnected together in order to establish the emergency call between thecaller's telephone 202 and the operator. In messaging context, bridgingmay provide session continuity to convert a map messages between senderand operator. The session may also require conversion between SMS, MMS,SIP or IM. As depicted in FIG. 2A, the media of the emergency call, forexample the audio and/or video of the call, is exchanged through thecall answer node A 208 and the emergency gateway 204 by passing theproxy 206. The control channel of the emergency call passes through theproxy 206 and as such, the proxy is capable of modifying the call or inthe case of a message session the gateway 204 can provide conversion andthe proxy can map the message to an operator.

If the call answer node A 208 fails, any call legs established on thecall answer node A 208 will be dropped. Accordingly, if nothing else isdone upon the failure the emergency call will fail. However, the proxy206 can monitor the status of the call answer node A 208 to detect ifthere is a failure. When the call answer node A 208 fails, the proxy canre-establish the emergency calls through another call answer node/callcontrol node B 212 as depicted in FIG. 2B. Similarly, the operatorworkstation at the call answer location 210 can monitor the status ofthe call answer node A 208 and attempts to re-establish the call withthe backup call answer node B 212. The backup call answer node receivesthe re-establishment requests from the proxy and the operatorworkstations and attempts to re-establish the previous calls between acaller and operator. The re-establishment requests received at thebackup call answer node B 212 from both the proxy 206 and the operatorworkstations include identifying information of the previouslyestablished call. Accordingly, the backup call answer node B 212 canre-establish the emergency calls by connecting the call requests thathave matching call identifying information.

In FIGS. 2A and 2B, the proxy 206 is depicted as being co-located withthe call answer node A 208. While such an arrangement can still providecall re-establishment in some situations, the proxy 206 may be likely toexperience a failure at the same time as the call answer node A 208, forexample as a result of hardware failure, software failure, power outageor fire, and as such, would not function to re-establish the emergencycalls.

FIGS. 3A and 3B depict a further call re-establishment system andprocess. The system and process is similar to that described above withregard to FIGS. 2A and 2B; however, a proxy 306, 314 is associated witheach call answer node 308, 312. The proxy and call answer node pairs306, 308 and 314, 312 may be physically remote from each other tomitigate the possibility of a single failure event affecting bothlocations. The proxy and call answer node of each pair may be providedon the same physical server or on co-located physical servers.

As depicted in FIGS. 3A and 3B, the proxy that is located separate fromthe call answer node is used in establishing calls to that call answernode. That is, in FIGS. 3A and 3B, Proxy B 314 is used to establishcalls to the call answer node A 308. As depicted, a call to theemergency gateway 304 is routed to the proxy B 314, which in turn routesthe call to the call answer node A 308. The call answer node 308determines an operator workstation at one of a possible plurality ofoperator locations 310. The call can be established as a plurality ofconnected call legs between the calling device 302 and the emergencygateway 304, the emergency gateway 304 and the call answer node a 308and the call answer node A and the operator workstation at the operatorlocation 310. If the call answer node A 308 fails it is likely that theproxy A 306, which is either on the same physical server or at on aco-located physical server will also fail as depicted in FIG. 3B.However, proxy B 312, which was used in establishing the call, willlikely not suffer from the same failure and as such can detect thefailure of the call answer node A 308 and re-establish calls through thecall answer node B 312.

In FIGS. 2A, 2B and 3A, 3B the failure of the respective call answernode is detected by both the proxy that established the call as well asthe operator's workstation that the call was connected to. The callanswer node failure may be detected in various ways. For example, boththe proxy may use a heartbeat signal mechanism. In such a case, theproxy periodically transmits a heartbeat signal to the call answer node,which receives the heartbeat signal and transmits a response back to theproxy if the call answer node is functioning. If no response is receivedfrom the call answer node in a set period of time, the proxy assumesthat the call answer node has failed and attempts to re-establish thecalls through another call answer node. The operator workstation can usea similar heartbeat technique to detect failure of the call answer node.Additionally or alternatively, if the proxy is able to determine whichof the operator's workstations the call was established to, the proxymay send a message to the operator's workstation informing it of thefailure of the call answering node.

The proxy and the operator workstation co-operate to re-establish theprevious calls on the backup call answer node. In particular, each ofthe proxy and the operator workstation can send a re-establishmentrequest to the backup answer point node. Each of the transmittedrequests includes information that may be used in determining whichcallers and operators need to be re-connected to each other in order tore-establish the calls. The transmitted requests may be for example are-INVITE request or a REFER request that includes an identification ofthe previously established call. The indication may be, for example, aunique identifier assigned to the original call when it was established.The requests may further identify that the request is forre-establishing previous calls, as opposed to a request to establish anew call.

When the call answer node receives a request that includes an indicationthat the request is for re-establishing a call, the call answer nodechecks a recovery queue in order to determine if another request toestablish a call was received that has matching identifying information.If requests are received at the call answer node that have matching callidentification information, the call answer node establishes the calllegs and connects the two call legs in order to re-establish theprevious call. If the call answer node does not find a request in therecovery queue that has matching call identifying information, therequest can be placed in the recovery queue so that a subsequentrequest, from either the proxy or the operator workstation, will locateits matching pair for re-establishing the previous call.

FIG. 4 depicts a process flow for establishing and re-establishingemergency calls. As depicted in FIG. 4, a caller 402 attempts toestablish an emergency call to a public safety answering point, forexample by dialing a common emergency number such as 9-1-1 (A). Theemergency call request is received at the emergency gateway 404, whichestablishes a call leg (B) with the caller 402. The emergency gateway404 attempts to establish the second leg of the emergency call and sendsa SIP INVITE (C) to the proxy 414. The proxy 414 receives the INVITE andforwards it (D) to the appropriate call answer node A 408. The proxy 414may re-write information in the INVITE, for example by adjusting one ormore parameters in the header of the INVITE message. The call answernode A 408 establishes a call leg (E) directly with the emergencygateway 404. The call answer node A 408 determines an operator that cantake the call and forwards the INVITE (F) to the operator's workstation410. A call leg is established between the call answer node A 408 andthe operator 410 (G). The individual call legs established at (B), (E)and (G) are bridged in order to establish call (H). The call legs (E)and (G) established through the answer node A 408 may be associated withunique identifying information that is available at both the proxy 414and the operator workstation 410. The unique identifying information maybe for example a random number generated at the proxy and transmitted tothe operator in the call establishment procedure. Other types of uniqueidentifying information are possible, such as a combination of IPaddresses used as part of the call establishment.

At some point during the established call (H), the answer node A fails(I). The failure may be the result of various events, including softwarefailures, hardware failures or other failures such as loss of power.Regardless of the reason for the failure, it results in thedisconnection of the caller 402 and the operator 410, since the failedcall answer node 408 can no longer bridge the two call legs (E) and (G).The proxy detects the failure of the node (J). Similarly the operatordetects the failure of the node (K). The detection may be achieved by aheart beat signal that is returned by the call answer node when it isoperating. When no return signal is received, it is considered anindication that the call answer node has failed. Once the proxy detectsthe failure, it attempts to re-establish a call between the caller andthe operator who originally took the call. For each call establishedthrough the proxy, the proxy sends an indication to the emergencygateway that it should attempt to re-establish the call with the backupcall answer node B 412. The indication sent from the proxy 414 to theemergency gateway 404 may be in the form of an INVITE message or a REFERmessage. The message includes information that the emergency gateway 404can utilize to identify the first call leg established to the caller402, as well as information for identifying the previously establishedcall legs on the call answer node 408 that can be used to re-establishthe call on the backup call answer node B 412.

The proxy may send a re-INVITE message (L) to the emergency gateway 404indicating that a call should be re-established at call answer node B412. The re-INVITE message includes call identifying information thatcan be used by the gateway to identify the first call leg establishedwith the caller 402. The re-INVITE message (L) includes information thatcan be used to identify the previously established call legs, which issent in an INVITE message (M) sent to the backup call answer node B 412.The INVITE (M) is received at the call answer node B 412, whichdetermines that the INVITE message is for re-establishing a previouslyestablished call, for example by the presence of the call identifyinginformation. The call answer node 412 receives the INVITE and checks arecovery queue for other received INVITE messages that include matchingcall identifying information. If no INVITE having matching identifyinginformation is found, the INVITE is placed into the recovery queue. Ifthe INVITE message has not been matched in a set period of time, forexample 5 seconds, the INVITE message may be processed in the normalmanner.

After the operator 410 detects (K) the failure of the call answer node A408, it sends an INVITE message to the backup call answer node B 412that includes the same call identifying information sent by the proxy.The call answer node B 412 receives the INVITE message, and again checksthe recovery queue for INVITE messages having matching call identifyinginformation. When a match is found, call legs are established betweenthe call answer node B 412 and the emergency gateway 404 (O) as well asbetween the call answer node B 412 and the operator 410 (P). Once thecall legs (O) and (P) the individual call legs (O), (P) and (A) arebridged to re-establish the original call between the caller 402 and theoperator 410. The session continues to be maintained by the emergencygateway until a SIP BYE is received from the proxy and it tears down thesession.

FIG. 5 depicts components of call answer node capable of re-establishingemergency calls. The call answer node 500 may be implemented by one ormore physical servers 502. Each server comprises a processing unit forexecuting instructions and a memory unit for storing the instructions.The call answer node 500 comprises call establishment controlfunctionality 504 that receives requests for establishing calls, such asINVITE messages, and processes them. The call establishment control mayprocess the calls to identify new calls, which are provided to a newcall queue 506. The new call queue 506 stores INVITEs 508 that have beenreceived. Each INVITE may include an associated time stamp associatedwith when the INVITE was received as well call information useful forestablishing the call. Call INVITEs may be processed in order todetermine an operator workstation that can take the call. The operatorselection may be performed by operator selection functionality 510 thatmaintains information on the location of operator workstations as wellas which workstations are currently handling an emergency call, or thosecapable of handling an emergency call. Once an operator is selected thecall may be established through call management functionality 512. Thecall management functionality 512 may bridge one or more media streamstogether in order to connect different call legs. The call managementfunctionality may use RTP media streaming, or other appropriateprotocols for transmitting media, such as audio and/or video. The callmanagement functionality 512 may interact with answering point featuresfunctionality 514 such as call recording.

In addition to establishing new calls, the call answer node 500 mayfurther include call re-establishment functionality 514. When the callestablishment control functionality 504 receives a call request that isfor re-establishing a call, it is passed to call re-establishmentfunctionality 514, which checks the recovery queue 516 for previouslyreceived call requests that have matching call identifying information.If message is matched, it can be processed by the call managementfunctionality 510, which establishes and bridges call legs, whichre-established the call between the caller and the operator. Asdepicted, in addition to the call information and the time stamp, therequest for re-establishing calls 516 includes identifying informationthat will be sent by both the proxy and the operator workstation andused in matching call requests. If the request for the callre-establishment 516 remains in the recovery queue 518 for a period oftime greater than a threshold, for example 5 seconds, the call requestcan be removed from the recovery queue 518 and added to the new callqueue 506 and subsequently processed as a new call request.

The call answer node 500 may also comprise heartbeat functionality 522that may be used in order to detect failure of the call answer node. Theheartbeat functionality may periodically send out signals to othercomponents, such as the proxy and operator workstations. When a failureoccurs, the signals will no longer be sent and as such, will provide anindication that the call answer node has failed. Accordingly, the proxyor operator workstation may detect the failure after a threshold periodof time has passed without receiving the heartbeat signal.

Although described above as heartbeat functionality 522, additional oralternative functionality may be used to detect failure of the callanswer node. For example, a real-time transport protocol (RTP) streambetween the call answer node and an operator workstation may bemonitored. If there is no information sent from the call answer node toan operator workstation in an RTP stream for a given threshold period oftime, the call answer node may be assumed to have failed. The thresholdperiod of time may vary, for example from 10 seconds to a minute. Theshorter the threshold period of time is, the quicker a potential failuremay be detected. However, if the threshold period of time is too short,network delays may be incorrectly determined as a failure.

As described above, the call re-establishment functionality 516 checkseach received call request to determine if a match exists in therecovery queue. However, if the emergency gateway and the operatorworkstations are configured to detect the failures at different timethresholds, then it is possible to search the recovery queue 518 onlyfor the requests from whichever of the proxy or the operatorworkstations is configured to detect the failure the slowest, since therequest from the other of the proxy or the operator workstations willalready have been received and added to the queue. For example, theproxy may be configured to detect the failure after not receiving aheartbeat signal for 5 seconds, while the operator workstations maydetect the failure after 10 seconds. Accordingly, when the call answernode receives re-establishment requests are received from the proxy therequests can be added to the recovery queue 518. When a request isreceived from the operator workstations, the matching request from theproxy will already be in the recovery queue 518.

FIG. 6 depicts a method of re-establishing an emergency call. The method600 may be implemented by the call answer node. The method receives acall re-establishment request (602). The re-establishment request may bereceived from either the proxy or an operator's workstation. There-establishment requests may include call information for setting upthe call, as well as call identification information of the previouslyestablished call. Once a request is received, the recovery queue ischecked (604) for re-establishment requests that have callidentification information matching the received call identificationinformation of the received request. The check of the re-establishmentrequest determines if a request having matching call identifyinginformation has been found (606). If a matching request is found (Yes at606), the call legs are established to the emergency gateway and thecall operator workstation and the call legs bridged (608) tore-establish the previous call between the caller and the operator. If amatching request is not found (No at 606) the received call request canbe added to the recovery queue (610).

FIG. 7 depicts a further method of re-establishing an emergency call.The method 700 is similar to that of FIG. 6. However, the method of 700only checks the recovery queue for call requests from the operatorworkstations. As such, the operator workstation must send there-establishment request after the proxy sent the re-establishmentrequest. The proxy detects the failure of the node after not receiving aheartbeat signal for a first period of time such as 5 seconds while theoperator workstation detects the failure of the node after not receivinga heartbeat signal after a second period of time that is larger than thefirst period of time, for example 10 seconds, so that the request fromthe operator workstation is received after the request from the proxyhas been received.

The method 700 detects a node failure at the proxy (702). Upon detectingthe failure of the call answer node, the proxy sends a callre-establishment request, which is received at a backup call answer node(704). When the re-establishment request is received from the proxy itis added to the recovery queue (706). After the proxy detects thefailure, the operator workstation detects the failure of the node (708)and sends a re-establishment request to the backup node from theoperator workstation (710). The backup node receives the request fromthe operator and checks information identifying the previouslyestablished call the call request is associated with to determine if acall request in the recovery queue has matching identifying information.If a matching re-establishment request is found (Yes at 712), the calllegs are established and bridged to re-establish the emergency callbetween the caller and the operator. If a request having matching callidentifying information is not found (No at 712), the re-establishmentrequest from the operator workstation is processed as a call-back (714).

FIG. 8 depicts a messaging session, such as short message service (SMS),multimedia message service (MMS) or instant message (IM), using are-establishment system and process. As depicted, a messaging sessioncan be placed from a mobile device 802 having SMS, MMS or IM messagingcapability. Although depicted as mobile phones may be sent frommessaging capable devices including cellular telephones, SIP or VoIPuser agents. The messaging session, which may also be referred to as acall, is routed from the mobile 802 to an emergency gateway/networkelement 804. The system may comprise a number of emergency gateways asbackups in case of a failure of an emergency gateway and/or to provideemergency service to a larger area. The emergency gateway establishesthe emergency messaging session with a call answer node/call controlnode A 808 though a proxy 806. The call answer node A 808 establishesthe messaging session with an operator at one of a possible number ofdifferent operator locations 810. The message can be transmitted throughthe network using a Message Session Relay Protocol (MSRP), as per RFC4975/RFC 4976, for transmitting related messages in the context of acommunication protocol. The MSRP can be instantiated by the emergencygateway 804 with the Session Description Protocol (SDP) over SessionInitiated Protocol (SIP) or other rendezvous methods. The session canalso utilize an Extensible Messaging and Presence Protocol (XMPP) orSession Initiated Protocol for Instant Messaging and Presence LeveragingExtensions (SIMPLE).

The emergency call/message received at the emergency gateway 804 may bereceived over the PSTN network, a VoIP network or other communicationnetworks. The emergency gateway 804 is capable of establishing a firstsession leg with the phone 802. The emergency gateway 804 then attemptsto establish the second leg of the emergency session with an appropriateoperator. The emergency gateway 804 uses MSRP to establish and maintainthe session legs to the operator. The emergency gateway 804 uses MSRP tomanage sessions created using received SMS messages that are convertedinto MSRP messages towards the proxy and vice versa. On the first SMStext received using Short Message Peer-to-Peer (SMPP) from a givensource identifier, Mobile Station International ISDN Number, MobileSubscriber ISDN Number, or Mobile International ISDN Number (MSISDN) toa given destination (for example an IP address of the Proxy), theemergency gateway 804 creates a session by sending a SIP INVITE to theProxy with an SDP identifying to the proxy the MSRP session. Theemergency gateway 804 passes a session initiation request to a SIP proxy806, which in turn passes a session initiation request to the sessionanswer node A 808. The session answer node A 808 can establish a sessionleg, through media exchanged for example using Real-time TransportProtocol (RTP) techniques, with the emergency gateway 804. The callanswer node A 808 may also determine an operator workstation that theemergency session can be established with. Once an operator isdetermined and a session leg established between the call answer node A808 and the operator, the individual session legs can be bridged orotherwise connected together in order to establish the emergency sessionbetween the caller's mobile 802 and the operator.

If the call answer node A 808 fails, any session legs established on thecall answer node A 808 will be dropped. Accordingly, if nothing else isdone upon the failure the emergency messaging session will fail.However, the proxy 806 can monitor the status of the call answer node A808 to detect if there is a failure. When the call answer node A 808fails, the proxy can re-establish the emergency session through anothercall answer node/call control B 812 as depicted in FIG. 8B. Similarly,the operator workstation at the call answer location 810 can monitor thestatus of the call answer node A 808 and attempts to re-establish thesession with the backup call answer node B 812. The backup call answernode receives the re-establishment requests from the proxy and theoperator workstations and attempts to re-establish the previous sessionsbetween a caller and operator. The re-establishment requests received atthe backup call answer node B 812 from both the proxy 806 and theoperator workstations include identifying information of the previouslyestablished session. Accordingly, the backup call answer node B 812 canre-establish the emergency calls by connecting the call requests thathave matching call identifying information. The session continues to bemaintained by the emergency gateway 804 until a SIP BYE is received fromthe proxy 806 and it tears down the session.

Although the description discloses example methods, systems andapparatus including, among other components, software executed onhardware, it should be noted that such methods and apparatus are merelyillustrative and should not be considered as limiting. For example, itis contemplated that these hardware and software components could beembodied exclusively in hardware, exclusively in software, exclusivelyin firmware, or in any combination of hardware, software, and/orfirmware. Further, although certain components or apparatuses aredepicted as a single physical component, it is contemplated that theycould be implemented as multiple separate components. The method andinstructions can be implemented in a non-transitory computer memorywhich when executed by a processor provide the function described forprocessing messages and calls. Further still, it is contemplated thatthe functionality of multiple separate components described herein couldbe provided in a single component. Accordingly, while the followingdescribes example systems, methods and apparatus, persons havingordinary skill in the art will readily appreciate that the examplesprovided are not the only way to implement such systems, methods andapparatus.

What is claimed is:
 1. A method of re-establishing a messaging sessioncomprising: receiving short message service (SMS) messages initiationrequest at a Session Initiation Protocol (SIP) proxy wherein a first SMSmessage from a messaging device is received using Short MessagePeer-to-Peer (SMPP) from a given source (MSISDN); directing, from theSIP proxy, establishment of a session leg associated with the messagingsession between an initial emergency call answer node and an operatorworkstation wherein subsequent messages from the messaging devices aresend to the operator workstation while the session is established;directing, from the SIP proxy, establishment of a session leg for themessaging session between the initial emergency call answer node and anemergency call gateway; detecting at the SIP proxy a failure of theinitial emergency call answer node by monitoring a heartbeat signalbetween the SIP proxy and the initial emergency call answer node;transmitting from the SIP proxy a SIP session establishment request to asecond emergency call answer node; receiving the SIP sessionestablishment request at the second emergency call answer node, thesession establishment request having an indication of the previouslyestablished messaging session between an operator workstation and themessaging device to be re-established; checking a recovery queue at thesecond emergency call answer node for a previously received messagingsession establishment request having a matching indication for thepreviously established messaging session to re-establish; and bridgingat the second emergency call answer node a session leg for the receivedmessaging session establishment request and the session leg for thepreviously received messaging session establishment request having thematching indication for the previously established messaging session tore-establish the messaging session between the operator workstation andmessaging device when a match is found between the SIP proxy and theoperator workstation.
 2. The method of claim 1 wherein the SMS messagesare converted at an emergency gateway Message Session Relay Protocol(MSRP).
 3. The method of claim 1, wherein the session establishmentrequest having the indication of the previously established messagingsession to re-establish comprises an INVITE or REFER message includingan indication that the message is associated with the previouslyestablished messaging session, the INVITE or REFER message comprising atleast one characteristic for identifying the previously establishedmessaging session.
 4. The method of claim 1, wherein the receivedmessaging session establishment request is received from either anemergency call gateway or the operator workstation and the previouslyreceived messaging session establishment request is received from theother of the emergency call gateway and the operator workstation.
 5. Themethod of claim 1, wherein causing transmittal of one of the callestablishment request or a previously received call establishmentrequest comprises sending an INVITE or REFER message including anindication of the emergency call answer node to the emergency callgateway.
 6. The method of claim 1, wherein detecting the failure of theinitial emergency call answer node comprises: using a heartbeat signalbetween the initial emergency call answer node and the SIP proxy; ormonitoring a real-time transport protocol (RTP) stream between theinitial call answer node and the operator workstation.
 7. The method ofclaim 1, wherein detecting the failure of the initial emergency callanswer node at the operator workstation comprises: monitoring areal-time transport protocol (RTP) stream between the initial callanswer node and the operator workstation.
 8. The method of claim 1,further comprising placing the received messaging session establishmentrequest in the recovery queue when a match is not found.
 9. The methodof claim 8, further comprising moving an old call establishment requestfrom the recovery queue to a new emergency call queue if the old callestablishment request has been in the recovery queue for at least athreshold period time and no match has been found.
 10. An apparatus forre-establishing a messaging session comprising: a processor unit forexecuting instructions; and a memory for storing instructions, whichwhen executed by the processor unit configure the apparatus to:receiving short message service (SMS) messages initiation request at aSession Initiation Protocol (SIP) proxy wherein a first SMS message froma messaging device is received using Short Message Peer-to-Peer (SMPP)from a given source (MSISDN); directing, from the SIP proxy,establishment of a session leg associated with the messaging sessionbetween an initial emergency call answer node and an operatorworkstation wherein subsequent messages from the messaging devices aresend to the operator workstation while the session is established;directing, from the SIP proxy, establishment of a session leg for themessaging session between the initial emergency call answer node and anemergency call gateway; detecting at the SIP proxy a failure of theinitial emergency call answer node by monitoring a heartbeat signalbetween the SIP proxy and the initial emergency call answer node;transmitting from the SIP proxy a SIP session establishment request to asecond emergency call answer node; receiving a the SIP messaging sessionestablishment request at the second emergency call answer node, themessaging session establishment request having an indication of thepreviously established messaging session between an operator workstationand the messaging device to be re-established; checking a recovery queueat the second emergency call answer node for a previously receivedsession establishment request having a matching indication for thepreviously established messaging session to re-establish; and bridgingat the second emergency call answer node a session leg for the receivedmessaging session establishment request and the session leg for thepreviously received messaging session establishment request having thematching indication for the previously established messaging session tore-establish the messaging session between the operator workstation andmessaging device when a match is found between the SIP proxy and theoperator workstation.
 11. The apparatus of claim 10 wherein the SMSmessages are converted at an emergency gateway Message Session RelayProtocol (MSRP).
 12. The apparatus of claim 10, wherein the messagingsession establishment request having the indication of a previouslyestablished emergency messaging session to re-establish comprises anINVITE or REFER message including an indication that the message isassociated with the previously established emergency messaging session,the INVITE or REFER message comprising at least one characteristic foridentifying the previously established emergency messaging session. 13.The apparatus of claim 10, wherein the received messaging sessionestablishment request is received from either an emergency call gatewayor the operator workstation and the previously received messagingsession establishment request is received from the other of theemergency call gateway and the operator workstation.
 14. The apparatusof claim 10, further comprising placing the received messaging sessionestablishment request in the recovery queue when a match is not found.15. The apparatus of claim 14, further comprising moving an oldmessaging session establishment request from the recovery queue to a newemergency call queue if an old call establishment request has been inthe recovery queue for at least a threshold period time and no match hasbeen found.
 16. A non-transitory computer readable memory containinginstructions for execution by a processor, the instructions forperforming a method of re-establishing a messaging session comprising:receiving short message service (SMS) messages initiation request at aSession Initiation Protocol (SIP) proxy wherein a first SMS message froma messaging device is received using Short Message Peer-to-Peer (SMPP)from a given source (MSISDN); directing, from the SIP proxy,establishment of a session leg associated with the messaging sessionbetween an initial emergency call answer node and an operatorworkstation wherein subsequent messages from the messaging devices aresend to the operator workstation while the session is established;directing, from the SIP proxy, establishment of a session leg for themessaging session between the initial emergency call answer node and anemergency call gateway; detecting at the SIP proxy a failure of theinitial emergency call answer node by monitoring a heartbeat signalbetween the SIP proxy and the initial emergency call answer node;transmitting from the SIP proxy a SIP session establishment request to asecond emergency call answer node; receiving the SIP sessionestablishment request at the second emergency call answer node, thesession establishment request having an indication of the previouslyestablished messaging session between an operator workstation and themessaging device to be re-established; checking a recovery queue at thesecond emergency call answer node for a previously received messagingsession establishment request having a matching indication for thepreviously established messaging session to re-establish; and bridgingat the second emergency call answer node a session leg for the receivedmessaging session establishment request and the session leg for thepreviously received messaging session establishment request having thematching indication for the previously established messaging session tore-establish the messaging session between the operator workstation andmessaging device when a match is found between the SIP proxy and theoperator workstation.